package com.sky.constant;

import java.util.Objects;

/**
 * 常量类
 */
public class UserConstant {
    // region 系统相关参数
    /**
     * 系统默认的用户密码
     */
    public static final String USER_DEFAULT_PASSWORD = "123456";

    /**
     * 手机号固定长度
     * 可用于员工或用户注册、信息修改时使用
     */
    public static final int PHONE_LENGTH = 11;

    /**
     * 身份证号固定长度
     * 可用于员工或用户注册、信息修改时使用
     */
    public static final int ID_NUMBER_LENGTH = 18;

    /**
     * 店铺状态存储的key
     */
    public static final String SHOP_STATUS_KEY = "SHOP_STATUS";

    // endregion

    // region 分页相关参数

    /**
     * 默认的页码
     */
    public static final int PAGE_NUM_QUERY_DEFAULT = 1;
    /**
     * 默认的每页数量
     */
    public static final int PAGE_SIZE_QUERY_DEFAULT = 10;

    // endregion

    // region 性别参数

    /**
     * 男
     */
    public static final String MAN = "1";

    /**
     * 女
     */
    public static final String WOMAN = "2";

    /**
     * 校验性别字段是否合法
     * @param sex
     * @return
     */
    public static boolean validateSexLegal(String sex){
        return MAN.equals(sex) || WOMAN.equals(sex);
    }

    // endregion

    // region 菜品分类类型参数

    /**
     * 分类类型: 菜品
     */
    public static final int TYPE_DISH = 1;

    /**
     * 分类类型: 套餐
     */
    public static final int TYPE_SET_MEAL = 2;

    /**
     * 校验分类类型参数是否合法
     * @param type
     * @return
     */
    public static boolean validateTypeLegal(int type){
        return type == TYPE_DISH || type == TYPE_SET_MEAL;
    }

    // endregion

    // region 状态参数

    /**
     * 状态参数
     * 启用
     */
    public static final Integer STATUS_ENABLE = 1;

    /**
     * 状态参数
     * 禁用
     */
    public static final Integer STATUS_DISABLE = 0;

    /**
     * 校验状态参数是否合法
     * 合法则返回true, 不合法则返回false
     * @param status
     * @return
     */
    public static boolean validateStatusLegal(Integer status){
        return Objects.equals(status, STATUS_ENABLE) || Objects.equals(status, STATUS_DISABLE);
    }

    //endregion

}
